惊异值(surprisal)

惊异值(surprisal)是语言学和认知科学中用来衡量一个语言单元(如单词、短语等)在给定上下文中出现意外程度的概念。它来源于信息论中的自信息(self-information),具体通过事件概率的负对数来计算。

数学定义

对于一个离散随机变量X,其取值为x,在给定上下文c(如前面的单词序列)的情况下,事件x的惊异值S(x|c)定义为:

S(x|c)=log2P(x|c)

其中:

P(x|c)是在上下文c下事件x发生的条件概率。
对数以2为底,惊异值通常以比特(bits)为单位。

计算步骤

惊异值的计算分为以下几个步骤:

确定上下文c
在语言处理中,上下文c通常是当前语言单元(如单词)之前的所有内容。例如,在自回归语言模型(如GPT-2)中,上下文c是目标单词之前的所有单词序列。

计算条件概率P(x|c)
语言模型根据上下文c,通过其输出层(通常是softmax层)预测下一个语言单元x的概率。
例如,在句子“He clean”后,模型可能会预测下一个单词“the”的概率为0.8,而“his”的概率为0.1。

计算惊异值
将目标语言单元x的条件概率P(x|c)代入公式,取负对数:

S(x|c)=log2P(x|c)

如果概率P(x|c)高,惊异值低,表示事件“预料之中”。
如果概率P(x|c)低,惊异值高,表示事件“意外”。